package br.com.esporte.business.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import br.com.base.business.impl.ServiceImpl;
import br.com.base.model.UsuarioBase;
import br.com.esporte.business.VotacaoService;
import br.com.esporte.business.impl.util.DataGeneric;
import br.com.esporte.model.DiaPraticadoGrupo;
import br.com.esporte.model.TipoVotacaoEnum;
import br.com.esporte.model.Usuario;
import br.com.esporte.model.Votacao;
import br.com.esporte.persistence.DAO.VotacaoDAO;
import br.com.esporte.persistence.filter.FiltroVotacao;

/**
 * @author Milton Domingues
 */
@Service
public class VotacaoServiceImpl extends ServiceImpl<Votacao, Long, FiltroVotacao, VotacaoDAO> implements VotacaoService {

	@Autowired
	private VotacaoDAO votacaoDAO;

	public VotacaoServiceImpl() {

	}

	@Override
	public List<DataGeneric<Usuario, DataGeneric<Integer, Boolean>>> consultarMaiorVotadoQtdVotos(DiaPraticadoGrupo dia, TipoVotacaoEnum tipo) {
		return getRepositorioDAO().consultarMaiorVotadoQtdVotos(dia, tipo);
	}

	@Override
	public DataGeneric<Usuario, Integer> consultarMaiorVotadoTipoDiaPraticado(DiaPraticadoGrupo dia, TipoVotacaoEnum tipo) {
		return getRepositorioDAO().consultarMaiorVotadoTipoDiaPraticado(dia, tipo);
	}

	@Override
	public VotacaoDAO getRepositorioDAO() {
		return votacaoDAO;
	}

	@Override
	public void resolverPerDependencias(Votacao vo, UsuarioBase usuario) {

	}

	@Override
	public void resolverPosDependencias(Votacao vo, UsuarioBase usuario) {

	}

	@Override
	public void resolverPreExcluir(Votacao vo) {

	}

	@Override
	public void tratarDadosEntidade(Votacao vo) {

	}

	@Override
	public void validarAlteracao(Votacao vo) {

	}

	@Override
	public void validarExclusao(Votacao vo) {

	}

	@Override
	public void validarInclusao(Votacao vo) {

	}

	@Override
	public void validarUnicidade(Votacao vo) {

	}
}
